MenuDriven Circular Queue
import java.util.*; class cp_menu{ int rear; int counter; int front; String[] data; public cp_menu(){ counter = 0; front = 0; rear = -1; data = new String[5]; } public void insert(String o){ if(rear < counter){ rear = (rear+1)%5; data[rear] = o; ++counter; } } public void remove(){ if(counter !=0){ System.out.println("Removed Item: "+data[front]); front = (front+1)%5; --counter; } } public void show(){ int i=front; do{ System.out.println("Data at "+i+" is: "+data[i]); i=(i+1)%5; }while(i!=rear); } public static void main(String[] aargs){ cp_menu c = new cp_menu(); int op=4; Scanner ss = new Scanner(System.in); while(true){ System.out.println("1.Insert"); System.out.println("2.Remove"); System.out.println("3.Display"); System.out.println("4.Exit"); System.out.println("Choice:"); op = ss.nextInt(); if(op == 1){ System.out.println("Enter Word:"); String s = ss.next(); c.insert(s); }else if(op == 2){ c.remove(); }else if(op == 3){ c.show(); }else{ ss.close(); System.exit(1); } } } }